package it.prova.type;

import java.util.ArrayList;
import java.util.List;

import org.eclipse.jst.jsf.metadataprocessors.features.IDefaultValue;
import org.eclipse.jst.jsf.metadataprocessors.features.IPossibleValues;
import org.eclipse.jst.jsf.metadataprocessors.features.IValidValues;
import org.eclipse.jst.jsf.metadataprocessors.features.PossibleValue;
import org.eclipse.jst.jsf.taglibprocessing.attributevalues.EnumerationType;

@SuppressWarnings("unchecked")
public class MultiDataUnitAttributeValueRuntimeType extends EnumerationType implements IValidValues, IPossibleValues, IDefaultValue
{	
	@Override
	public boolean isValidValue(String value)
	{
		if(value != null)
		{
			try
			{
				int number = Integer.parseInt(value);
				if(number >= 0)
				{
					return true;
				}
				else
				{
					return false;
				}
			}
			catch(NumberFormatException nfe)
			{
				return false;
			}
			
		}
		else
		{
			return false;
		}
	}

	@Override
	protected String getReturnType()
	{
		return "it.prova.type.MultiDataUnitAttributeValueRuntimeType";
	}
	
	public List<PossibleValue> getPossibleValues()
	{
		return new ArrayList<PossibleValue>();
	}
}